package cn.com.ninng;

/**
 * Excel表列序号
 * 给你一个字符串 columnTitle ，表示 Excel 表格中的列名称。返回该列名称对应的列序号。
 *     A -> 1
 *     B -> 2
 *     C -> 3
 *     ...
 *     Z -> 26
 *     AA -> 27
 *     AB -> 28
 *     ...
 *
 * @author liulekang
 * @createdate 2021/7/30
 */
public class Problem171 {

    public static void main(String[] args) {
        System.out.println(titleToNumber("ZY"));
    }


    public static int titleToNumber(String columnTitle) {
        //A-Z 每26进1 26进制转10进制
        int num = 0;
        int power = 1;
        for (int i = columnTitle.length()-1; i >= 0 ; i--) {
                int j = columnTitle.charAt(i) - 'A' +1;
                num += (j * power);
                power *= 26;
        }
        return num;
    }

}
